package edu.pe.cayetano.view.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import ws.synopsis.frmwrk.common.BResult;
import edu.pe.cayetano.model.bean.UsuarioBean;
import edu.pe.cayetano.model.bo.UsuarioBO;
import edu.pe.cayetano.seccd.constantes.ConstantesSECCD;
import edu.pe.cayetano.seccd.constantes.ConstantesSession;
import edu.pe.cayetano.view.form.CambioClaveForm;

public class SeguridadAction extends BaseAction{
	
	private String 			page = ConstantesSECCD.EXITO;
	
	public ActionForward cambiaClave(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
		UsuarioBO 	usuarioBO 			= new UsuarioBO();
		BResult 	ret					= new BResult();
		
		try {
			HttpSession session = request.getSession(false);
			UsuarioBean	usuarioTO	= (UsuarioBean)session.getAttribute(ConstantesSession.USUARIO_LOGEADO);
			String 		pasword_nuevo = ((CambioClaveForm) form).getPassword_nuevo();
			ret = usuarioBO.cambiaClave(usuarioTO.getCodigo(),pasword_nuevo);
			if(ret.getCode()==0 && ret.getObject()!=null){
				page=ConstantesSECCD.EXITO;
				mostrarMensaje(request,ConstantesSECCD.EXITO_CAMBIO_CONTRASENA,new String[0],"home.do","home");
			}else{
				page=ConstantesSECCD.ERROR;
				mostrarMensaje(request,ConstantesSECCD.ERROR_CAMBIO_CONTRASENA,new String[0],"home.do","home");
			}
		}catch (Exception e) {
			page=ConstantesSECCD.ERROR;
			mostrarMensaje(request,ConstantesSECCD.ERROR_CAMBIO_CONTRASENA,new String[0],"home.do","home");
		}
		return mapping.findForward(page);	
	}
	
	public ActionForward cargar(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
		return mapping.findForward(page);	
	}
}
